/**
 *
 */
package de.cbf.cam.dsa.rcp.model.entities;

import java.util.ArrayList;
import java.util.List;

import de.cbf.util.uuidheader.entities.UUIDHeader;
import de.cbf.util.uuidheader.exceptions.EntityMergeException;

/**
 * @author salter
 *
 */
//@XmlAccessorType(XmlAccessType.FIELD)
public class NameType extends UUIDHeader {

	public static final String ATTRIBUTE_TITLE		 	= "name_type.title";
	public static final String ATTRIBUTE_FIRST_NAME 	= "name_type.first_name";
	public static final String ATTRIBUTE_NICK_NAME 		= "name_type.nick_name";
	public static final String ATTRIBUTE_FAMILY_NAME 	= "name_type.family_name";
	public static final String ATTRIBUTE_ROYAL_VON		= "name_type.royal.von";

//	@XmlElementWrapper(name="mapKeys")
//	@XmlElement(name="mapKey")
	protected List<String> namesMapKeys 		;
//	@XmlElementWrapper(name="typeAttributes")
//	@XmlElement(name="typeAttribute")
	protected List<String> nameTypeAttributes 	;

	/**
	 *
	 */
	public NameType() {
		namesMapKeys 		= new ArrayList<String>();
		nameTypeAttributes 	= new ArrayList<String>();
	}

	@Override
	public String toString() {
		return "NameType [namesMapKeys=" + namesMapKeys
				+ ", nameTypeAttributes=" + nameTypeAttributes + "]";
	}



	public List<String> getNamesMapKeys() {
		return namesMapKeys;
	}
	public void setNamesMapKeys(List<String> namesMapKeys) {
		this.namesMapKeys = namesMapKeys;
	}

	public List<String> getNameTypeAttributes() {
		return nameTypeAttributes;
	}

	public void setNameTypeAttributes(List<String> nameTypeAttributes) {
		this.nameTypeAttributes = nameTypeAttributes;
	}

	@Override
	protected void doMergeDataFrom(UUIDHeader entity, boolean i_am_older)
			throws EntityMergeException {
		throw new EntityMergeException("not implemented yet");

	}






}
